//创建ajax
//确定路径
//发送请求
//接收请求
// url地址  ajax接受参数
function ajax(obj) {
  //参数
  let str = "";
  for (let key in obj.params) {
    str += `${key}=${obj.params[key]}&`;
  }
  // 去掉结尾&符号
  str = str.replace(/&$/, "");
  let xhr = new XMLHttpRequest();
  //判断type是否为是get
  if (obj.type == "get") {
    //如过有参数拼接参数
    if (str) {
      xhr.open("get", obj.url + "?" + str);
    } else {
      xhr.open("get", obj.url);
    }
    xhr.send();
  }

  //如果是添加post请求
  if (obj.type == "post") {
    xhr.open("post", obj.url);
    //设置请求头
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    if (obj.author) {
      xhr.setRequestHeader("authorization", localStorage.getItem("token"));
    }
    xhr.send(str);
  }
  //如果是修改put请求
  if (obj.type == "put") {
    xhr.open("put", obj.url);
    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    xhr.send(str);
  }
  //如果是删除请求
  if (obj.type == "delete") {
    xhr.open("delete", obj.url);
    xhr.send();
  }

  //接收
  xhr.onreadystatechange = function () {
    if (xhr.readyState == 4) {
      if (xhr.status == 200) {
        let data = xhr.responseText;
        obj.fn(data);
      }
    }
  };
}